package fiuba.algo3.gpschallenge.persistencia;

import java.io.FileNotFoundException;
import java.io.FileReader;

import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;

import fiuba.algo3.gpschallenge.modelo.Puntaje;
import fiuba.algo3.gpschallenge.modelo.Ranking;

public class PersistenciaPuntaje extends PersistenciaXML {
	
	public void persistirPuntos(Puntaje puntaje) throws JAXBException{
		
		try {
			String nombrexml=puntaje.getNombreJugador()+"-Puntos";
			persistiraXML(puntaje, puntaje.getNombreJugador(),nombrexml);
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}
	
	public Puntaje cargarPuntos(String XML) throws JAXBException, FileNotFoundException{
		JAXBContext context = JAXBContext.newInstance(Puntaje.class);
		Unmarshaller um = context.createUnmarshaller();
		Puntaje puntaje = (Puntaje) um
		    .unmarshal(new FileReader(XML));
		return puntaje;
	}
	
	public void persistirRanking(Ranking ranking) throws JAXBException{
		
		try {
			String nombrexml="RANKING";
			persistiraXML(ranking, "JUEGO",nombrexml);
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}
	
	public Ranking cargarRanking(String XML) throws JAXBException, FileNotFoundException{
		JAXBContext context = JAXBContext.newInstance(Ranking.class);
		Unmarshaller um = context.createUnmarshaller();
		Ranking ranking = (Ranking) um
		    .unmarshal(new FileReader(XML));
		return ranking;
	}
}
